import VueRouter from 'vue-router'
import Vue from 'vue'
import auth from '@/utils/auth'
// import Login from '@/views/login/index.vue'
// import Layout from '@/views/layout'
// import Home from '@/views/home'
// import Article from '@/views/article'
// import Publish from '@/views/publish'
const Login = () => import('@/views/login')
const Layout = () => import('@/views/layout')
const Home = () => import('@/views/home')
const Article = () => import('@/views/article')
const Publish = () => import('@/views/publish')
Vue.use(VueRouter)

const router = new VueRouter({
  routes: [ // 路由规则数组
    { path: '/login', component: Login },
    {
      path: '/',
      component: Layout,
      children: [
        { path: '/', component: Home },
        { path: '/article', component: Article },
        { path: '/publish', component: Publish }
      ]
    }
  ]
})

// 路由前置守卫
router.beforeEach((to, from, next) => {
  // 获取token
  const token = auth.getToken()
  // 不是访问登录，并且没有token，才跳转登录页面
  if (to.path !== '/login' && !token) return next('/login')
  // 其他情况放行
  next()
})

export default router
